Program Synthesis from Formal Requirements Speciications Using Apts
نویسنده
چکیده
Formal speciications of software systems are extremely useful because they can be rigorously analyzed, veriied, and validated, giving high conndence that the speciication captures the desired behavior. To transfer this conndence to the actual source code implementation, a formal link is needed between the speciication and the implementation. Generating the implementation directly from the speciica-tion provides one such link. A program transformation system such as Paige's APTS can be useful in developing a source code generator. This paper describes a case study in which APTS was used to produce code generators that construct C source code from a requirements speciication in the SCR (Software Cost Reduction) tabular notation. In the study, two diierent code generation strategies were explored. The rst strategy uses rewrite rules to transform the parse tree of an SCR speciication into a parse tree for the corresponding C code. The second strategy associates a relation with each node of the speciication parse tree. Each member of this relation acts as an attribute, holding the C code corresponding to the tree at the associated node; the root of the tree has the entire C program as its member of the relation. This paper describes the two code generators supported by APTS, how each was used to synthesize code for two example SCR requirements speciications, and what was learned about APTS from these implementations.
منابع مشابه
Program Synthesis from Formal Requirements Specifications Using APTS
Formal specifications of software systems are extremely useful because they can be rigorously analyzed, verified, and validated, giving high confidence that the specification captures the desired behavior. To transfer this confidence to the actual source code implementation, a formal link is needed between the specification and the implementation. Generating the implementation directly from the...
متن کاملA Formal Requirements Engineering Method forSpeci
This paper presents a formal requirements engineering method capturing speciication, synthesis, and veriica-tion. Being multi-paradigm, our approach integrates individual established formal methods: temporal logics are used to express abstract speciications in the form of loose global constraints, like ordering requirements, or abstract safety and liveness properties, whereas State-charts are u...
متن کاملAn Approach to Animating Model-based Object-oriented Formal Speciications
| One of the important issues in the application of formal notations in software development is the validation of formal speciications against the informal customer requirements. Animation has been proposed as one of the techniques for achieving this goal. This paper describes an approach to animating object-oriented model-based formal speciications as well as a research prototype of an animati...
متن کاملEngineering Formal Requirements: Analysis and Testing
We introduce a method for formal analysis and symbolic testing of behavioral aspects of Z speciications. We start deening a (chemical) operational semantics, which supports an abstract execution model and some new constructs to allow the veriication of dynamic properties. Moreover, using such a semantics, we have built a parallel animator of Z speciications which automatically constructs distri...
متن کاملA Formal Approach to Deductive Synthesis of Constraint Logic Programs
Formal program synthesis is concerned with deriving programs that are (formally) correct wrt their speciications, and is therefore of crucial importance to formal development of veriiably correct software. Declarative paradigms such as logic programming are particularly suitable for program synthesis, and we have formulated a formal approach to synthesising standard logic programs. Our approach...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003